[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Int 21 Fn 69  U - DOS 4+ Internal - Get/set Disk Serial Number             [D]

   AH = 69h
   AL = subfunction
       00h get serial number
       01h set serial number
   BL = drive (0=default, 1=A, 2=B, etc)
   DS:DX -> disk info (see below)

Return: CF set on error
       AX = error code (see AH=59h)
   CF clear if successful
       AX destroyed
       (AL = 00h) buffer filled with appropriate values from extended BPB
       (AL = 01h) extended BPB on disk set to values from buffer

Notes: does not generate a critical error; all errors are returned in AX
   error 0005h given if no extended BPB on disk
   does not work on network drives (error 0001h)
   buffer after first two bytes is exact copy of bytes 27h thru 3Dh of
     extended BPB on disk
   this function is supported under Novell NetWare versions 2.0A through
     3.11; the returned serial number is the one a DIR would display,
     the volume label is the NetWare volume label, and the file system
     is set to "FAT16".
   the serial number is computed from the current date and time when the
     disk is created; the first part is the sum of the seconds/hundredths
     and month/day, the second part is the sum of the hours/minutes and
     year
   the volume label which is read or set is the one stored in the extended
     BPB on disks formatted with DOS 4.0+, rather than the special root
     directory entry used by the DIR command in COMMAND.COM (use AH=11h
     to find that volume label)

See Also: AX=440Dh

Format of disk info:
Offset Size    Description
 00h   WORD    info level (zero)
 02h   DWORD   disk serial number (binary)
 06h 11 BYTEs  volume label or "NO NAME    " if none present
 11h  8 BYTEs  (AL=00h only) filesystem type--string "FAT12   " or "FAT16   "

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson